package com.bytecodes.eaulas.comun.excepciones;

import com.bytecodes.eaulas.comun.servicios.TDSLanguageUtils;
 

/**
 * Errores en la aplicaci�n
 * @author David Fern�ndez G�mez
 */
public abstract class EAulasGenericExcepcion extends Exception
{
    private Exception excepcion = null; 
	private String msgUser = null;      

    /**
     * Constructor de la clase
     */
    public EAulasGenericExcepcion(){
        super();
        this.msgUser = TDSLanguageUtils.getMessage("err.errorGen");
    }

    /**
     * Constructor de la clase
     * @param excepcion : aplicaci�n
     */
    public EAulasGenericExcepcion(Exception excepcion){
        super();
        if(excepcion != null) this.msgUser = excepcion.getMessage();
        else this.msgUser = TDSLanguageUtils.getMessage("err.errorGen");
    }

    /**
     * Constructor de la clase
     * @param excepcion : excepci�n
     * @param msgUser : mensaje para el usuario
     */
    public EAulasGenericExcepcion(Exception excepcion, String msgUser){
        super(msgUser);
        this.excepcion = excepcion;
        this.msgUser = msgUser;
    }

    /**
     * Getter de lectura para excepci�n
     */
    public Exception getExcepcio(){
        return excepcion;
    }

    /**
     * Getter de lectura para msgUser
     */
    public String getMsgUser(){
        return msgUser;
    }

    /**
     * Setter de escritura para excepcion
     */
    protected void setExcepcion(Exception excepcion){
        this.excepcion = excepcion;
    }

    /**
     * Setter de escritura para msgUser
     */
    protected void setMsgUser(String msgUser){
        this.msgUser = msgUser;
    }
    
    
}
